The present invention relates to a method and device for designing surfaces with a free form, in particular, three-dimensional surfaces, comprising the following steps: a) defining an initial surface by forming a topological model of the three-dimensional surface, the topological model being represented by means of half-edge boundary modelling of boundary elements, comprising the data structures facet, closed loop, edge, half-edge and vertex; b) presenting the three-dimensional surface to the user with the aid of at least, one two-dimensional image; and c) modifying the three-dimensional surface.
The invention can be used in particular in designing ships. When designing a ship the shape of the hull is particularly important, both for streamlining and for the attractiveness of the design. Modification of the hull for streamlining and attractiveness is also referred to in shipbuilding by the term fairing. The more general term streamlining will be used below, it being assumed that this term also covers making the design attractive.
In known techniques for designing ships use is made of a representation of the surface of a ship model with the aid of wire models (xe2x80x98simple wire-framexe2x80x99). These can be presented to the designer using techniques known per se and hydrostatic calculations can also be performed using these models. It is also possible to perform calculations with regard to stability, movement of and loading of sections in waves. A disadvantage of this design technique is that there is no description of the surfaces between the lines of the simple wire-frame. An attempt is made to overcome this disadvantage by defining surface patches between lines of the simple wire-frame in order to obtain a complete surface of the design. However, this method is highly complex and user-intensive because it is necessary to work with surface patches in small areas and, at the same time, account must be taken of the shape of the complete surface.
Another possibility for designing a surface with a free form, which is also used in designing ships"" hulls, is to define a surface model. Actually the abovementioned filling of a simple wire-frame with surface patches is a first example of this here. More advanced techniques define surface models with the aid of basis splines, mathematical expressions of a three-dimensional line or three-dimensional surface. A special class of basis splines, the non-uniform parameterised rational basis splines, NURBS, are particularly suitable for this purpose because these are able to represent arbitrary curved lines, straight lines, circles, parabolae, ellipses and hyperbolae with the aid of a single standardised equation.
It is also possible to use a two-dimensional NURBS to describe a three-dimensional surface. By making use of only a single NURBS having a restricted dimension GX (by restricting X to 2 the surface will have a global continuity in contact planes/lines and curvature) this will result in a streamlined surface. This technique works well for simple hull designs, such as those for yachts, but still requires an appreciable number of manual operations by the naval architect to describe the complex shapes at the bow and stern of merchant ships. It is very difficult to define discontinuities, such as in the keel, with the aid of a single NURBS because there is a tendency to round off sharp transitions in surfaces.
It is also possible to make use of various smaller NURBS surface patches, which demands less effort for designing but often gives rise to problems with regard to the streamlining at the transitions between the various surface patches.
A number of disadvantages are associated with the use of basis splines and/or NURBS. The equations for basis splines and NURBS imply a network that is rectangular in the parameter space. The lines defined are in general not parallel to the orthogonal planes which are used, inter alia, for ships. Consequently it is possible to display the three-dimensional shape in the conventional manner (for ships: with the aid of waterlines, verticals and ribs) only with the aid of complex calculations and display techniques. Furthermore, with a regular network it is not possible to define partial network lines, which, for example, are needed for partial waterlines, additional local shape information and integrated roundings of the prow. By using complete network lines for these details good definition of said details is obtained, but the network lines can give rise to deformations in other locations on the surface. Finally, the location and nature of the network lines are already defined early in the design phase and subsequent modifications thereof are difficult to implement. Frequently it is quicker and easier to start again in such a case.
A further method for designing surfaces with a free form, which is also used in designing ships"" hulls, is the use of N-sided surface patches based on a description of the hull surface by a simple wire-frame. An N-sided surface patch is inserted in each of the topological holes in the simple wire-frame using the boundary curves and derivatives over the boundaries to describe the shape of the patch. The number of sides N of the surface patches is usually 3 to 6. This method has the advantage that there is a one-to-one relationship between the simple wire-frame and the surface model. A disadvantage is that the use of NURBS has become a xe2x80x98de factoxe2x80x99 standard in many design software packages. Designs defined with the aid of N-sided surface patches can thus not easily be exchanged with other software. A further disadvantage is that it is necessary to work with a simple wire-frame and a multiplicity of N-sided surface patches from the start of the design of the surface.
One example of this method using N-sided surface patches is disclosed in U.S. Pat. No. 5,459,821 in the name of Shigeru Kuriyama et al. Said patent describes a method for generating a polygonal surface patch in which the form in which each boundary curve is expressed and the topology of the curve network can be freely adjusted. With this method the boundary curves must be two-dimensional and surface patches are generated by sweeping a curve over further curves which intersect said curve. The surface patches are then mixed in order to obtain the complete surface with a free form. Said method has no provisions for streamlining the surface in a manner which is especially suitable for designing ships. Furthermore, changes can be made only in the points of the curves, after which the curves and the entire surface are recalculated.
The abovementioned methods all have the following disadvantages to a greater or lesser extent. Surface models give rise to difficulties with regard to the definition of a single streamlined surface because of the joints to and connections between the various surfaces. Following an initial definition of the surface, a very large number of complex operations on the part of the designer are frequently needed in order to achieve the final optimum result.
Because of the intrinsic lack of cohesion between the topological elements, the non-complete modelling methods are not able to define a streamlined surface unambiguously, as a result of which definition of the surface is difficult and susceptible to topological inconsistencies. Moreover, in the case of the non-complete modelling methods, coupling with methods for other calculations in the design process is often difficult or not possible because insufficient data are available with regard to the three-dimensional surface. Other calculations in the design process to which consideration can be given are methods for CFD (computational fluid dynamics) computing techniques or methods for production of components (computer aided manufacturing, CAM) or rapid production of prototypes (rapid prototyping).
The aim of the present invention is to provide a method and device for designing a surface with a free form, with which it is possible interactively, effectively and efficiently to modify and to streamline the three-dimensional surface and with which the abovementioned disadvantages are not present.
Said aim is achieved with a method of the type defined in the preamble, wherein in step a) the representation of the topological model also comprises the data structure line, which describes a sequence of edges, so that a non-regular network is formed which encompasses the entire three-dimensional surface with free form.
The method according to the present invention has the advantage that a non-regular network of curves can be used, as a result of which it is possible to generate arbitrary two-dimensional presentations of the three-dimensional surface, such as waterlines, verticals or ribs in a ships"" hull design. Furthermore it is possible to add partial network lines to the topological model, as a result of which it is possible to add highly local details without these affecting the remainder of the three-dimensional surface. Furthermore, the present method makes it possible to add or delete lines in all phases of the design.
In one embodiment of the present method the representation of the topological model further comprises the data structure curve, which is linked to the data structure edge and forms the geometrical description thereof. By adding curves as a geometrical description of the edges of the topological model it is possible to add geometrical shapes to the half-edge data structure of the topological model.
In a further embodiment of the present method, the representation of the topological model comprises the data structure plane, which is linked to the data structure facet and forms the geometrical description thereof. Preferably, the plane is linked to the data structure line, the line describing the periphery of the plane, and the plane is also linked to the curves located in the plane. By adding a plane as a geometrical description of a facet in the topological model, the description of the three-dimensional surface is complete. The topological model of the three-dimensional surface with the geometrical descriptions of curves and planes linked thereto form a complete geometrical model.
Preferably, the curves are described as non-uniform parameterised rational basis splines (NURBS). This mathematical description of a curve makes it possible to display arbitrary curved lines, straight lines, circles, parabolae, ellipses and hyperbolae with the aid of a single standardised equation. This is possible both for curves in a flat plane and for arbitrarily curved curves in the three-dimensional space. In this case the curves are also easy to modify by changing the vertices and weights in the NURBS description. Because the description of curves by means of NURBS or basis splines is standard in many design methods, interchangeability is obtained with (parts of) other software packages, such as standard libraries containing NURBS data.
The plane is preferably described by means of N-sided surface patches. This allows flexible geometrical description of the facets which are located between the edges of the topological model, which, for example, can advantageously be used in subsequent operations or in specific presentations to the user. In this context consideration can be given to visualisation and illustration of the final design, including positioning light sources and applying shadow.
According to a preferred embodiment of the present invention, the model of the three-dimensional surface is processed with the aid of Euler operators in which references to the data structures line and/or curve are incorporated and by operators for adding or removing a data structure line and/or curve, as a result of which the model remains valid and consistent. By only making use of Euler operators, the description of the three-dimensional plane will continue to satisfy the Euler-Poincarxc3xa9 equation for a valid and consistently closed three-dimensional surface. This also makes it possible for the user of the design method to make changes to the model without having to worry about the consistency and validity of the model, since this is automatically ensured by the present method.
In a further embodiment of the method according to the present invention, the display to the user in step b) of the method takes place by calculating and displaying lines on the three-dimensional surface on the basis of the surface patches, independently of the network topography. By, as it were, projecting lines onto the three-dimensional surface formed by the surface patches it is possible to display the three-dimensional surface in various ways. Consequently it is possible, for example, to display only the waterlines of a ship""s hull or to display a combination of the waterlines and the rib frame.
A significant advantage of the method according to the present invention is the possibility for interactive modification of the three-dimensional surface. By means of the underlying topological model combined with the geometrical description of curves and planes it is possible to display modifications to the user immediately. If the user makes use of multiple displays when designing, said underlying model ensures that the modifications are visible in all displays.
In a further embodiment of the method according to the present invention step c) further comprises streamlining of the three-dimensional surface by modifying characteristics of the curves, preferably on the basis of an adaptive least squares fit. If the curves are defined on the basis of a basis spline, it is possible to add various weights for a specific curve, which makes targeted adjustments of the streamlining possible when streamlining on the basis of an adaptive least squares fit. The targeted adjustments can relate to specific shipbuilding characteristics, such as greater emphasis on the shape of the bow than on the size of the hold.
Using the method for designing a three-dimensional surface with a free form according to the present invention it is possible to work much more efficiently than with methods known to date, because a consistent network model of curves with extensive boundary modelling forms the basis for all calculations which take place. Consequently it is also possible to arrive at a design interactively, in contrast to the steps in earlier methods which frequently are precisely matched to one another and have to be carried out in a precise sequence. The sequence of manipulations such as streamlining, automatic generation and presentation of new lines can be freely chosen by the user.
In a further embodiment the data relating to the three-dimensional surface from the method according to the present invention are used as input for calculating characteristics of the three-dimensional surface. In this context consideration can be given to calculations relating to computational fluid dynamics (CFD) or hydrostatic calculations. By means of these calculations it is possible to determine numerous characteristics of a ship""s hull shape, such as the formation of waves by the ship and the inflow of water to the propeller. A precise definition of the three-dimensional surface, which is possible with the method of the present invention, is necessary for reliable CFD calculations.
In a further embodiment of the method according to the present invention the three-dimensional surface can also be used as input for a method for the digital production of the three-dimensional surface. This can be carried out on actual scale (computer aided manufacturing, CAM) or on a smaller scale (referred to as digital production, rapid prototyping), such as milling, where material is removed from an object, or incremental techniques, where material is added to an object. These methods also demand a very good and complete description of the three-dimensional model.
In a second aspect the present invention relates to a device for designing three-dimensional surfaces with a free form, the device being provided with computing means for carrying out the method according to the invention, and with memory means, connected to the computing means, for storing data relating to the three-dimensional surface, display means and input means.
Preferably, the display means are suitable for displaying multiple windows containing two-dimensional projections of the three-dimensional surface. By this means the designer is able mentally to form a three-dimensional image from the various two-dimensional projections and, after inputting modifications in one of the two-dimensional displays, to see the effect on other two-dimensional projections immediately.
A third aspect of the present invention relates to a computer-readable medium that contains a computer program which, after loading on a device provided with computer means, provides the device with the functionality of the method according to the first aspect of the present invention.